#include <iostream>

using namespace std;
using ll=long long;
const int N=1e5+10;

int a[N];
ll tr[N];
int n,m;
int lowbit(int x)
{
	return x&(-x);
}
void add(int x,int c)
{
	for(int i=x;i<=n;i+=lowbit(i))
		tr[i]+=c;
}
ll query(int x)
{
	ll ret=0;
	for(int i=x;i>0;i-=lowbit(i))
	{
		ret+=tr[i];
	}
	return ret;
}
int main()
{
	cin>>n>>m;
	for(int i=1;i<=n;i++)
	{
		cin>>a[i];
		add(i,a[i]-a[i-1]);
	}
		
	for(int i=0;i<m;i++)
	{
		char op[2];
		int x;
		scanf("%s%d",op,&x);
		if(*op=='Q')
		{
			cout<<query(x)<<endl;
		}
		else{
			int y,z;
			scanf("%d%d",&y,&z);
			add(x,z);
			add(y+1,-z);
		}
	}
	
	return 0;
}
